Predicting Bike-Sharing Patterns

Code Functionality

Criteria Meet Specification

All code works appropriately and passes all unit tests

All the code in the notebook runs in Python 3 without failing, and all unit tests pass.

Sigmoid activation function

The sigmoid activation function is implemented correctly

Forward Pass

Criteria Meet Specification

Forward Pass - Training

The forward pass is correctly implemented for the network's training.

Forward Pass - Run

The run method correctly produces the desired regression output for the neural network.

Backward Pass

Criteria Meet Specification

Batch Weight Change

The network correctly implements the backward pass for each batch, correctly updating the weight change.

Updating the weights

Updates to both the input-to-hidden and hidden-to-output weights are implemented correctly.

Hyperparameters

Criteria Meet Specification

Number of epochs

The number of epochs is chosen such the network is trained well enough to accurately make predictions but is not overfitting to the training data.

Number of hidden units

The number of hidden units is chosen such that the network is able to accurately predict the number of bike riders, is able to generalize, and is not overfitting.

Learning rate

The learning rate is chosen such that the network successfully converges, but is still time efficient.

Output nodes

The number of output nodes is properly selected to solve the desired problem.

Final Results

The training loss is below 0.09 and the validation loss is below 0.18.